
	<div class="score">
		<span><h1>课程介绍</h1></span>
	</div>
	<div class="list">
		<ul>
			<li><a href="#c1">课程概述</a></li>
			<li><a href="#c2">重点与难点</a></li>
			<li><a href="#c3">课程教学目标</a></li>
		</ul>
	</div>
	<hr style="height:1px;border:none;border-top:2px solid #555555;" />
	<div class="content">
		<span class="t1" id="c1">
			<h2>
				课程概述
			</h2>
			<p>&nbsp;&nbsp;&nbsp;&nbsp;本课程是计算机科学与技术专业的重要基础课，主要介绍如何合理地组织数据、有效地存储和处理数据，正确地设计算法以及对算法的分析和评价。通过本课程的学习，使学生深刻地理解数据结构的逻辑结构和物理结构的基本概念以及有关算法，培养基本的、良好的程序设计技能，编制高效可靠的程序。</p>
			<p>
				&nbsp;&nbsp;&nbsp;&nbsp;《数据结构》简要的说，是研究数据的关系学科，主要介绍和讨论数据基于问题的逻辑结构、基于内存物理存储结构，和基于结构的数据各种操作的实现及分析。数据结构的不仅是程序设计的基础，也是设计和实现编译程序、操作系统、数据系统及其它系统程序以及各种大型应用程序的重要基础。
			</p>
		</span>
		<hr style="height:1px;border:none;border-top:2px solid #555555;" />
		<span class="t1" id="c2">
			<h2>
				重点与难点
			</h2>
			<p class="p1"><strong>课程的重点：</strong><br>
               1) 线性表ADT顺序存储实现中的创建、查找、插入和删除等基本操作及相关算法<br>
               2) 栈、队列的定义、特点、性质和应用，ADT栈、ADT队列设计实现中的操作及相关算法。<br>
               3) 数组的存储表示方法，顺序存储数组时数据元素之间的地址关系<br>
               4) 二叉树的定义、结构特点和性质，ADT二叉树的设计和实现，二叉树存储结构的特点，先、中、后序遍历的递归和非递归算法，二叉树的线索化过程和算法，哈夫曼编码的算法。<br>
               5) 图的定义、术语、结构特点和性质，ADT图的设计和实现，图的邻接矩阵、邻接表的存储结构及其构造方法，图的深度优先搜索和广度优先搜索算法，连通图的最小生成树算法，有向无环图的拓扑排序算法、关键路径的算法，最短路径求解中的Dijkstra算法和Floyed算法。<br>
               6) 顺序表和有序表的查找算法，二叉排序树的构造方法和查找算法<br>
               7) 简单插入排、冒泡排序、快速排序、选择排序算法的特点、时间复杂性、空间复杂性和稳定性分析。</p>
			<p><strong>课程的难点：</strong><br>
               1)抽象数据类型(ATD)的概念和实现方法，算法的时间复杂性和空间复杂性分析。<br>
               2)线性表ADT链式存储实现中的某些操作。<br>
               3)栈和队列在解决实际问题中的应用。<br>
               4)串的模式匹配算法中的KMP算法。<br>
               5)二叉树的先序、中序、后序遍历的非递归算法，二叉树的线索化算法。<br>
               6)有向无环图的关键路径算法，最短路径求解中Floyed算法。<br>
               7)二叉排序树结点的删除算法，二叉平衡树的构造算法。<br>
               8)堆排序、归并排序算法以及它们的时间复杂性和空间复杂性分析。<br>
			</p>
		</span>
		<hr style="height:1px;border:none;border-top:2px solid #555555;" />
		<span class="t1" id="c3">
			<h2>
				课程教学目标
			</h2>
			<p>&nbsp;&nbsp;&nbsp;&nbsp;了解数据结构课程的体系结构，掌握数据结构的基本概念和基础知识,能够用C语言实现基本的数据结构和算法；能够运用C语言实现顺序和链式存储结构的线性结构；能够运用C语言实现树形结构；能够运用C语言实现图形结构； 掌握查找和排序算法，并且结合项目达到在项目中运用的能力；会编写基本的算法、熟悉常用程序设计技巧、会利用数据结构解决基础编程语言不能直接表达的数据；为学生利用C进一步研究与开发应用程序奠定基础。</p>

		</span>
	</div>
